package com.grad.why.studentsystem.service;

import com.grad.why.studentsystem.domain.ChooseCourse;
import com.grad.why.studentsystem.domain.Course;
import com.grad.why.studentsystem.domain.Coursetype;
import com.grad.why.studentsystem.domain.current.CurrentCourse;
import com.grad.why.studentsystem.domain.current.CurrentCourseDistributeInfos;
import com.grad.why.studentsystem.domain.current.CurrentProject;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface CourseService {
    List<CurrentCourse> getCourseList(int offset, int limit, String search);

    long getCourseListLength(String search);

    List<Coursetype> getCourseTypes();

    int getMaxCourseId();

    boolean checkCourseExistByCourseName(String coursename);

    int addCourseInfoByEntity(Course course);

    int deleteCourseInfoById(int i);

    int updateCourseInfoByEntity(Course course);

    List<Course> getCourseInfos();

    String getCourseStateByCid(int cid);

    List<Course> getStudentCourseTableBySid(int sid);

    Course getCourseInfoByCid(@Param("id") int id);

    List<Course> getCourseInfosByRunning();

    int addCourseInfosByExcelFile(String uploadCurrentFileName);

    List<CurrentCourseDistributeInfos> AllCourseDistrubuteInfo();
}
